package com.lyf.scm.plan.domain.remote.bigdata.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 安全库存实体
 *
 * @author wangchlei
 * @date 2020/09/21
 */
@Data
public class SafetyStockDTO implements Serializable {
    @ApiModelProperty("创建时间")
    private Date createTime;

    @ApiModelProperty("sku编码")
    private String skuKey;

    @ApiModelProperty("单位")
    private String unit;

    @ApiModelProperty("日期")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date date;

    @ApiModelProperty("节点id")
    private String nodeId;

    @ApiModelProperty("节点类型")
    private String nodeType;

    @ApiModelProperty("安全库存")
    private BigDecimal ss;

    @ApiModelProperty("预测需求(NRT)")
    private BigDecimal demandNrt;

    @ApiModelProperty("预测需求(VLT)")
    private BigDecimal demandVlt;

    @ApiModelProperty("预测需求(BP1)")
    private BigDecimal demandBp1;

    @ApiModelProperty("预测需求(BP2)")
    private BigDecimal demandBp2;

    @ApiModelProperty("预测需求(BP3)")
    private BigDecimal demandBp3;

    @ApiModelProperty("库存下限")
    private BigDecimal lowerLimit;

    @ApiModelProperty("库存上限")
    private BigDecimal upperLimit;

    @ApiModelProperty("补货点")
    private BigDecimal lop;

    @ApiModelProperty("目标库存")
    private BigDecimal ti;

    @ApiModelProperty("可售库存（期初库存）")
    private BigDecimal saleInventory;

    @ApiModelProperty("采购在途库存")
    private BigDecimal buyFlyInventory;

    @ApiModelProperty("调拨在途库存")
    private BigDecimal allocateFlyInventory;

    @ApiModelProperty("配送在途库存")
    private BigDecimal distFlyInventory;

    @ApiModelProperty("库存水位")
    private BigDecimal inventory;

    @ApiModelProperty("目标库存天数")
    private Integer targetDays;

    @ApiModelProperty("建议执行补货量(基本单位)")
    private Integer execReplishment;
}
